'''
字典：dict
定义：字典就是一种使用‘键值对’存储数据的模型
key(键) value(值)
格式：字典名 = {键1:值1,键2:值2,键3:值3...}
'''
dict_score = {'王力宏':88,'周杰伦':58,'林俊杰':65,'王宝强':50}
# 查找：字典名[键]
print(dict_score['王力宏'])
print(dict_score['林俊杰'])
print(dict_score['王宝强'])

# 练习
# 姓名 柳岩 爱好 跳舞 身高 178 体重 90 年龄 35
ly_dict = {'姓名':'柳岩','爱好':'跳舞','身高':'178cm','体重':'90斤','年龄':'35岁'}
print(ly_dict)

# 打印 爱好
print(ly_dict['爱好'])
# 打印 身高
print(ly_dict['身高'])
# 打印 体重
print(ly_dict['体重'])

# 字典的增加和修改
# 增加数据
# 如果增加的key不在字典中，增加数据格式：字典名[key] = vale
a_score = {'王力宏':88,'周杰伦':58,'林俊杰':65}
# 王思聪考了30分
a_score['王思聪'] = 30
print(a_score)
# 修改数据
# 把周杰伦的分数修改为66
a_score['周杰伦'] = 66
print(a_score)
ly_dict = {'姓名':'柳岩','爱好':'跳舞','身高':'178cm','体重':'90斤','年龄':'35岁'}
# 打印柳岩的爱好
print(ly_dict['爱好'])
# 打印柳岩的体重
print(ly_dict['体重'])
# 修改柳岩的身高为175cm
ly_dict['身高'] = '175cm'
print(ly_dict)
 # 添加数据 手机号：123456789
ly_dict['手机号'] = '123456789'
print(ly_dict)

# 删除数据  pop(键)
# 删除体重
ly_dict.pop('体重')
print(ly_dict)
# 删除身高
ly_dict.pop('身高')
print(ly_dict)
# 清空，全部删除数据
ly_dict = {}
print(ly_dict)

a_score = {'王力宏':88,'周杰伦':58,'林俊杰':65}
# 扩展
# 判断一个数据是否在一个列表 元组或者字典等
# 格式： if 数据 in 变量名:   （用if判断）
if 'www' in a_score:
    print('在字典中')
else:
    print('不在字典中')
a_score = {'王力宏':88,'周杰伦':58,'林俊杰':65,'王宝强':50}
# 遍历 字典
# 打印键: 字典名.keys()
for n in a_score.keys():
    print(n)

# 打印值: 字典名.values()
for x in a_score.values():
    print(x)

# 键和值:  字典名.items()
for s in a_score.items():
    print(s)

a = {'王力宏':88,'周杰伦':58,'林俊杰':65,'王宝强':50}
# 打印林俊杰分数
print(a['林俊杰'])
# 增加王思聪30分
a['王思聪'] = 30
print(a)
# 修改 周杰伦60分
a['周杰伦'] = 60
print(a)
# 删除王宝强
a.pop('王宝强')
print(a)
# 打印 修改后字典中，所有分数的和
l = 0
for x in a.values():
    l += x
print(l)
a = {'王力宏':88,'周杰伦':60,'林俊杰':65,'王宝强':50}
# 打印成绩及格的名字
for s,c in a.items():
    if c>=60:
        print(s)
dictA = {'name':'王老师','height':165,'weight':90,'hobby':'打豆豆','sex':'女'}
#打印王老师的身高
print(dictA['height'])
#修改'hobby'为'看电影'
dictA['hobby'] = '看电影'
print(dictA)
#添加'tel' 123456789
dictA['tel'] = '123456789'
print(dictA)
#删除'sex'的数据
dictA.pop('sex')
print(dictA)
#用for循环打印所有key的值
for a in dictA.keys():
    print(a)
#用for循环打印所有value的值
for b in dictA.values():
    print(b)
#用for循环打印所有的key和value的值
for c in dictA.items():
    print(c)

#有两个列表list1、list2，把两个列表中相同的元素找出来，存到列表listA种中
list1 = ['刘备','关羽','唐僧','孙悟空','张飞','猪八戒','沙悟净','怪兽']
list2 = ['关羽','王大锤','奥特曼','张飞','唐僧','怪兽','孙悟空','蔡徐坤']
listA = []

for a in list1:
     for b in list2:
         if a == b:
             listA.append(a)
print(listA)








